import java.util.*;

public class test {
//    NC228 判断子序列
//    描述
//    给定两个字符串 S 和 T ，判断 S 是否是 T 的子序列。
//    即是否可以从 T 删除一些字符转换成 S，保证字符串中仅含有小写字母
//    示例1
//    输入："nowcoder","nowcoder"
//    返回值：true
//    示例2
//    输入："nower","nowcoder"
//    返回值：true

//    public static boolean isSubsequence (String S, String T) {
//        int i=0;
//        int j=0;
//        while (i<S.length()&&j<T.length()){
//            if(S.charAt(i)==T.charAt(j)){
//                i++;
//                j++;
//            }else{
//                j++;
//            }
//        }
//        return i==S.length();
//    }
//    public static void main(String[] args) {
//        Scanner sc=new Scanner(System.in);
//        String S=sc.nextLine();
//        String T=sc.nextLine();
//        boolean flag=isSubsequence(S,T);
//        System.out.println(flag);
//    }


//    点击消除
//    描述:牛牛拿到了一个字符串。
//    他每次“点击”，可以把字符串中相邻两个相同字母消除，例如，字符串"abbc"点击后可以生成"ac"。
//    但相同而不相邻、不相同的相邻字母都是不可以被消除的。
//    牛牛想把字符串变得尽可能短。他想知道，当他点击了足够多次之后，字符串的最终形态是什么？
//    输入描述：一个字符串，仅由小写字母组成。（字符串长度不大于300000）
//    输出描述：一个字符串，为“点击消除”后的最终形态。若最终的字符串为空串，则输出0。
//    示例1
//    输入：abbc
//    输出：ac
//    示例2
//    输入：abba
//    输出：0

//    public static void func(String str){
//        Stack<Character> stack=new Stack<>();
//        ArrayList<Character> list=new ArrayList<>();
//        for (int i = 0; i < str.length(); i++) {
//            char ch=str.charAt(i);
//            if(stack.isEmpty()||stack.peek()!=ch){
//                stack.push(ch);
//            }else{
//                stack.pop();
//            }
//        }
//        if(stack.empty()){
//            System.out.println("0");
//        }else{
//            list.addAll(stack);
//            for (int i = 0; i < list.size(); i++) {
//                System.out.print(list.get(i));
//            }
//        }
//    }
//    public static void main(String[] args) {
//        Scanner sc = new Scanner(System.in);
//        while (sc.hasNextLine()) {
//            String a = sc.nextLine();
//            func(a);
//        }
//    }


    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        while (sc.hasNextLine()){
            String str=sc.nextLine();
            StringBuilder stringBuilder=new StringBuilder(str.length());
            int index=-1;
            for (int i = 0; i < str.length(); i++) {
                char ch=str.charAt(i);
                if(index==-1||ch!=stringBuilder.charAt(index)){
                    stringBuilder.append(ch);
                    index++;
                }else{
                    stringBuilder.deleteCharAt(index);
                    index--;
                }
            }
            if(index==-1){
                System.out.println("0");
            }else{
                System.out.println(stringBuilder);
            }
        }
    }

}
